/**
* Essential OCL Lexer
* <copyright>
*
* Copyright (c) 2005, 2010 IBM Corporation and others.
* All rights reserved.   This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
*   IBM - Initial API and implementation
*   E.D.Willink - Lexer and Parser refactoring to support extensibility and flexible error handling
*   Borland - Bug 242880
*   E.D.Willink - Bug 292112, 295166
*   Adolfo Sanchez-Barbudo Herrera (Open Canarias) - LPG v 2.0.17 adoption (242153)
*   Adolfo Sanchez-Barbudo Herrera (Open Canarias) - Introducing new LPG templates (299396)
*
* </copyright>
*
* $Id: EssentialOCLLexer.gi,v 1.4 2010/02/09 21:04:08 ewillink Exp $
*/
/**
* Complete OCL Lexer
* <copyright>
*
* Copyright (c) 2005, 2009 IBM Corporation and others.
* All rights reserved.   This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
*   IBM - Initial API and implementation
*   E.D.Willink - Bug 292112, 292594
*   Adolfo Sanchez-Barbudo Herrera (Open Canarias) - LPG v 2.0.17 adoption (242153)
*   Adolfo Sanchez-Barbudo Herrera (Open Canarias) - Introducing new LPG templates (299396)
*
* </copyright>
*/

package edu.pku.sei.ocl.parser;

public class OCLLexerprs implements lpg.runtime.ParseTable, OCLLexersym {
    public final static int ERROR_SYMBOL = 0;
    public final int getErrorSymbol() { return ERROR_SYMBOL; }

    public final static int SCOPE_UBOUND = 0;
    public final int getScopeUbound() { return SCOPE_UBOUND; }

    public final static int SCOPE_SIZE = 0;
    public final int getScopeSize() { return SCOPE_SIZE; }

    public final static int MAX_NAME_LENGTH = 0;
    public final int getMaxNameLength() { return MAX_NAME_LENGTH; }

    public final static int NUM_STATES = 46;
    public final int getNumStates() { return NUM_STATES; }

    public final static int NT_OFFSET = 103;
    public final int getNtOffset() { return NT_OFFSET; }

    public final static int LA_STATE_OFFSET = 734;
    public final int getLaStateOffset() { return LA_STATE_OFFSET; }

    public final static int MAX_LA = 2;
    public final int getMaxLa() { return MAX_LA; }

    public final static int NUM_RULES = 272;
    public final int getNumRules() { return NUM_RULES; }

    public final static int NUM_NONTERMINALS = 35;
    public final int getNumNonterminals() { return NUM_NONTERMINALS; }

    public final static int NUM_SYMBOLS = 138;
    public final int getNumSymbols() { return NUM_SYMBOLS; }

    public final static int SEGMENT_SIZE = 8192;
    public final int getSegmentSize() { return SEGMENT_SIZE; }

    public final static int START_STATE = 273;
    public final int getStartState() { return START_STATE; }

    public final static int IDENTIFIER_SYMBOL = 0;
    public final int getIdentifier_SYMBOL() { return IDENTIFIER_SYMBOL; }

    public final static int EOFT_SYMBOL = 99;
    public final int getEoftSymbol() { return EOFT_SYMBOL; }

    public final static int EOLT_SYMBOL = 104;
    public final int getEoltSymbol() { return EOLT_SYMBOL; }

    public final static int ACCEPT_ACTION = 461;
    public final int getAcceptAction() { return ACCEPT_ACTION; }

    public final static int ERROR_ACTION = 462;
    public final int getErrorAction() { return ERROR_ACTION; }

    public final static boolean BACKTRACK = false;
    public final boolean getBacktrack() { return BACKTRACK; }

    public final int getStartSymbol() { return lhs(0); }
    public final boolean isValidForParser() { return OCLLexersym.isValidForParser; }


    public interface IsNullable {
        public final static byte isNullable[] = {0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,1,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,1,
            0,0,0,0,0,0,0,0
        };
    };
    public final static byte isNullable[] = IsNullable.isNullable;
    public final boolean isNullable(int index) { return isNullable[index] != 0; }

    public interface ProsthesesIndex {
        public final static byte prosthesesIndex[] = {0,
            19,22,23,24,27,32,14,29,34,5,
            21,35,7,8,16,17,20,26,28,33,
            2,3,4,6,9,10,11,12,13,15,
            18,25,30,31,1
        };
    };
    public final static byte prosthesesIndex[] = ProsthesesIndex.prosthesesIndex;
    public final int prosthesesIndex(int index) { return prosthesesIndex[index]; }

    public interface IsKeyword {
        public final static byte isKeyword[] = {0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0
        };
    };
    public final static byte isKeyword[] = IsKeyword.isKeyword;
    public final boolean isKeyword(int index) { return isKeyword[index] != 0; }

    public interface BaseCheck {
        public final static byte baseCheck[] = {0,
            1,3,4,3,3,3,1,2,2,1,
            1,5,1,1,1,1,1,1,1,1,
            1,1,2,2,2,1,1,1,1,2,
            1,1,1,2,1,1,1,1,2,1,
            1,2,2,3,2,2,0,1,2,2,
            2,1,2,3,2,3,3,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,2,1,2,2,2,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,2,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,2,
            1,2,0,1,1,1,2,1,2,2,
            1,2
        };
    };
    public final static byte baseCheck[] = BaseCheck.baseCheck;
    public final int baseCheck(int index) { return baseCheck[index]; }
    public final static byte rhs[] = baseCheck;
    public final int rhs(int index) { return rhs[index]; };

    public interface BaseAction {
        public final static char baseAction[] = {
            21,21,21,21,21,21,21,21,21,21,
            21,21,21,21,21,21,21,21,21,21,
            21,21,21,21,21,21,21,21,21,21,
            21,21,21,21,21,21,21,13,21,14,
            24,25,25,25,27,27,27,27,28,28,
            26,26,7,7,30,15,15,15,11,11,
            11,11,11,2,2,2,2,3,3,3,
            3,3,3,3,3,3,3,3,3,3,
            3,3,3,3,3,3,3,3,3,3,
            3,3,3,4,4,4,4,4,4,4,
            4,4,4,4,4,4,4,4,4,4,
            4,4,4,4,4,4,4,4,4,1,
            1,1,1,1,1,1,1,1,1,17,
            17,29,29,22,22,22,22,32,32,32,
            32,32,32,32,32,32,32,32,32,32,
            32,32,32,32,32,32,32,32,32,32,
            32,32,32,32,32,32,32,18,18,18,
            18,18,18,18,18,18,18,18,18,18,
            18,18,18,18,18,18,18,18,18,18,
            18,18,18,18,18,18,5,5,5,5,
            5,5,5,5,5,5,5,5,5,5,
            5,5,5,5,5,5,5,5,5,5,
            5,5,5,5,19,19,8,8,33,33,
            33,33,6,16,16,16,16,31,31,31,
            31,31,31,31,31,34,34,34,34,20,
            20,20,20,20,9,9,9,9,9,23,
            23,12,12,10,10,21,21,21,21,21,
            21,21,21,309,444,436,436,436,1089,373,
            401,305,1160,1162,446,373,36,38,994,135,
            134,134,134,132,281,288,1191,419,10,427,
            1192,304,282,420,606,448,448,448,448,448,
            448,1194,448,448,404,1189,363,606,448,448,
            448,448,448,448,389,448,448,421,387,363,
            606,448,448,448,448,448,448,1190,448,448,
            423,1193,363,897,448,448,448,448,448,448,
            1196,448,448,434,1187,363,703,380,380,380,
            380,380,380,800,262,262,262,262,262,262,
            1163,262,262,1127,53,380,380,1138,53,380,
            509,260,260,260,260,260,260,1,46,46,
            46,46,412,232,232,232,232,232,46,260,
            260,1075,53,46,100,46,103,44,44,44,
            44,1149,53,1165,53,406,43,44,278,1195,
            1188,306,44,1197,44,232,232,205,51,51,
            51,51,8,9,1198,42,1204,278,1063,377,
            1105,411,1116,413,1205,377,1207,411,1161,413,
            462,462,462,462,462,462,462,462,51,51,
            462,462
        };
    };
    public final static char baseAction[] = BaseAction.baseAction;
    public final int baseAction(int index) { return baseAction[index]; }
    public final static char lhs[] = baseAction;
    public final int lhs(int index) { return lhs[index]; };

    public interface TermCheck {
        public final static byte termCheck[] = {0,
            0,1,2,3,4,5,6,7,8,9,
            10,11,12,13,14,15,16,17,18,19,
            20,21,22,23,24,25,26,27,28,29,
            30,31,32,33,34,35,36,37,38,39,
            40,41,42,43,44,45,46,47,48,49,
            50,51,52,53,54,55,56,57,58,59,
            60,61,62,63,64,65,66,67,68,69,
            70,71,72,73,74,75,76,77,78,79,
            80,81,82,83,84,85,86,87,88,89,
            90,91,92,93,94,95,96,97,98,0,
            100,101,0,1,2,3,4,5,6,7,
            8,9,10,11,12,13,14,15,16,17,
            18,19,20,21,22,23,24,25,26,27,
            28,29,30,31,32,33,34,35,36,37,
            38,39,40,41,42,43,44,45,46,47,
            48,49,50,51,52,53,54,55,56,57,
            58,59,60,61,62,63,64,65,66,67,
            68,69,70,71,72,73,74,75,76,77,
            78,79,80,81,82,83,84,85,86,87,
            88,89,90,91,92,93,94,95,96,97,
            98,102,100,101,0,1,2,3,4,5,
            6,7,8,9,10,11,12,13,14,15,
            16,17,18,19,20,21,22,23,24,25,
            26,27,28,29,30,31,32,33,34,35,
            36,37,38,39,40,41,42,43,44,45,
            46,47,48,49,50,51,52,53,54,55,
            56,57,58,59,60,61,62,63,64,65,
            66,67,68,69,70,71,72,73,74,75,
            76,77,78,79,80,81,82,83,84,85,
            86,87,88,89,90,91,92,93,94,95,
            96,97,98,0,0,0,0,103,0,1,
            2,3,4,5,6,7,8,9,10,11,
            12,13,14,15,16,17,18,19,20,21,
            22,23,24,25,26,27,28,29,30,31,
            32,33,34,35,36,37,38,39,40,41,
            42,43,44,45,46,47,48,49,50,51,
            52,53,54,55,56,57,58,59,60,61,
            62,63,64,65,66,67,68,69,70,71,
            72,73,74,75,76,77,78,79,0,81,
            82,83,84,85,86,87,88,89,90,91,
            92,0,14,99,16,97,98,102,100,101,
            102,0,1,2,3,4,5,6,7,8,
            9,10,11,12,13,14,15,16,17,18,
            19,20,21,22,23,24,25,26,27,28,
            29,30,31,32,33,34,35,36,37,38,
            39,40,41,42,43,44,45,46,47,48,
            49,50,51,52,53,54,55,56,57,58,
            59,60,61,62,63,64,65,66,67,68,
            69,70,71,72,73,74,75,76,77,78,
            79,80,81,82,83,84,85,86,87,88,
            89,90,91,92,93,94,95,96,0,1,
            2,3,4,5,6,7,8,9,10,11,
            12,13,14,15,16,17,18,19,20,21,
            22,23,24,25,26,27,28,29,30,31,
            32,33,34,35,36,37,38,39,40,41,
            42,43,44,45,46,47,48,49,50,51,
            52,53,54,55,56,57,58,59,60,61,
            62,63,64,65,66,67,68,69,70,71,
            72,73,74,75,76,77,78,79,80,81,
            82,83,84,85,86,87,88,89,90,91,
            92,93,94,95,96,0,1,2,3,4,
            5,6,7,8,9,10,11,12,13,14,
            15,16,17,18,19,20,21,22,23,24,
            25,26,27,28,29,30,31,32,33,34,
            35,36,37,38,39,40,41,42,43,44,
            45,46,47,48,49,50,51,52,53,54,
            55,56,57,58,59,60,61,62,63,64,
            65,66,67,68,69,0,71,72,73,74,
            75,76,77,78,79,80,81,82,83,84,
            85,86,87,88,89,90,91,92,93,94,
            95,96,0,1,2,3,4,5,6,7,
            8,9,10,11,12,13,14,15,16,17,
            18,19,20,21,22,23,24,25,26,27,
            28,29,30,31,32,33,34,35,36,37,
            38,39,40,41,42,43,44,45,46,47,
            48,49,50,51,52,53,54,55,56,57,
            58,59,60,61,62,63,64,65,66,67,
            68,69,70,71,72,73,74,75,76,77,
            78,79,80,81,82,83,84,85,86,87,
            88,89,90,91,0,93,94,95,96,0,
            1,2,3,4,5,6,7,8,9,10,
            11,12,13,14,15,16,17,18,19,20,
            21,22,23,24,25,26,27,28,29,30,
            31,32,33,34,35,36,37,38,39,40,
            41,42,43,44,45,46,47,48,49,50,
            51,52,53,54,55,56,57,58,59,60,
            61,62,63,64,65,66,67,68,69,0,
            71,72,73,74,75,76,77,78,79,80,
            81,82,83,84,85,86,87,88,89,90,
            91,92,93,94,95,96,0,1,2,3,
            4,5,6,7,8,9,10,11,12,13,
            14,15,16,17,18,19,20,21,22,23,
            24,25,26,27,28,29,30,31,32,33,
            34,35,36,37,38,39,40,41,42,43,
            44,45,46,47,48,49,50,51,52,53,
            54,55,56,57,58,59,60,61,62,63,
            64,65,66,67,68,69,0,71,72,73,
            74,75,76,77,78,79,80,81,82,83,
            84,85,86,87,88,89,90,91,92,93,
            94,95,96,0,1,2,3,4,5,6,
            7,8,9,10,11,12,0,0,0,0,
            17,18,19,20,21,22,23,24,25,26,
            27,28,29,30,31,32,33,34,35,36,
            37,38,39,40,41,42,43,44,45,46,
            47,48,49,50,51,52,53,54,55,56,
            57,58,59,60,61,62,63,64,65,66,
            67,68,0,1,2,3,4,5,6,7,
            8,9,10,80,0,1,2,3,4,5,
            6,7,8,9,10,11,12,13,0,1,
            2,3,4,5,6,7,8,9,10,0,
            0,0,0,15,0,1,2,3,4,5,
            6,7,8,9,10,0,1,2,3,4,
            5,6,7,8,9,10,0,1,2,3,
            4,5,6,7,8,9,10,0,1,2,
            3,4,5,6,7,8,9,10,0,1,
            2,3,4,5,6,7,8,9,10,0,
            0,0,0,75,0,1,2,3,4,5,
            6,7,8,9,10,0,1,2,3,4,
            5,6,7,8,9,10,0,0,0,0,
            0,0,0,0,0,0,0,0,11,12,
            14,15,14,0,0,16,0,13,13,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,69,0,
            70,0,70,72,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,97,98,0,100,
            101,99,102,73,71,74,70,70,76,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,99,99,0,99,0,0,0,0
        };
    };
    public final static byte termCheck[] = TermCheck.termCheck;
    public final int termCheck(int index) { return termCheck[index]; }

    public interface TermAction {
        public final static char termAction[] = {0,
            462,508,508,508,508,508,508,508,508,508,
            508,508,508,508,508,508,508,508,508,508,
            508,508,508,508,508,508,508,508,508,508,
            508,508,508,508,508,508,508,508,508,508,
            508,508,508,508,508,508,508,508,508,508,
            508,508,508,508,508,508,508,508,508,508,
            508,508,508,508,508,508,508,508,508,508,
            508,508,508,508,508,508,406,508,508,508,
            508,508,508,508,508,508,508,508,508,507,
            508,508,508,508,508,508,508,508,508,462,
            508,508,462,506,506,506,506,506,506,506,
            506,506,506,506,506,506,506,506,506,506,
            506,506,506,506,506,506,506,506,506,506,
            506,506,506,506,506,506,506,506,506,506,
            506,506,506,506,506,506,506,506,506,506,
            506,506,506,506,506,506,506,506,506,506,
            506,506,506,506,506,506,506,506,506,506,
            506,506,506,506,506,506,506,506,511,506,
            506,506,506,506,506,506,506,506,506,506,
            506,474,506,506,506,506,506,506,506,506,
            506,468,506,506,11,513,513,513,513,513,
            513,513,513,513,513,513,513,513,513,513,
            513,513,513,513,513,513,513,513,513,513,
            513,513,513,513,513,513,513,513,513,513,
            513,513,513,513,513,513,513,513,513,513,
            513,513,513,513,513,513,513,513,513,513,
            513,513,513,513,513,513,513,513,513,513,
            513,513,513,513,513,513,513,513,513,513,
            513,513,513,513,513,513,513,513,513,513,
            513,513,513,513,513,513,513,513,513,513,
            513,513,513,47,462,462,462,513,462,444,
            444,444,444,444,444,444,444,444,444,436,
            436,350,337,354,315,436,436,436,436,436,
            436,436,436,436,436,436,436,436,436,436,
            436,436,436,436,436,436,436,436,436,436,
            370,436,436,436,436,436,436,436,436,436,
            436,436,436,436,436,436,436,436,436,436,
            436,436,436,436,436,436,436,446,330,311,
            283,296,300,476,478,733,727,304,21,497,
            490,491,488,489,730,494,324,341,480,481,
            356,462,487,461,486,446,446,467,446,446,
            317,462,694,694,694,694,694,694,694,694,
            694,694,694,694,694,694,694,694,694,694,
            694,694,694,694,694,694,694,694,694,694,
            694,694,694,694,694,694,694,694,694,694,
            694,694,694,694,694,694,694,694,694,694,
            694,694,694,694,694,694,694,694,694,694,
            694,694,694,694,694,694,694,694,694,694,
            694,694,694,694,694,694,694,694,694,694,
            694,694,694,694,694,694,694,694,694,694,
            694,694,694,694,694,694,694,694,462,722,
            722,722,722,722,722,722,722,722,722,722,
            722,722,722,722,722,722,722,722,722,722,
            722,722,722,722,722,722,722,722,722,722,
            722,722,722,722,722,722,722,722,722,722,
            722,722,722,722,722,722,722,722,722,722,
            722,722,722,722,722,722,722,722,722,722,
            722,722,722,722,722,722,722,722,722,722,
            722,722,722,722,722,722,722,722,722,722,
            722,722,722,722,722,722,722,722,722,722,
            464,722,722,722,392,263,448,448,448,448,
            448,448,448,448,448,448,448,448,448,448,
            448,448,448,448,448,448,448,448,448,448,
            448,448,448,448,448,448,448,448,448,448,
            448,448,448,448,448,448,448,448,448,448,
            448,448,448,448,448,448,448,448,448,448,
            448,448,448,448,448,448,448,448,448,448,
            448,448,448,448,448,462,448,448,448,448,
            448,448,448,448,448,448,448,448,448,448,
            448,448,448,448,448,448,448,448,448,448,
            448,392,462,380,380,380,380,380,380,380,
            380,380,380,380,380,380,380,380,380,380,
            380,380,380,380,380,380,380,380,380,380,
            380,380,380,380,380,380,380,380,380,380,
            380,380,380,380,380,380,380,380,380,380,
            380,380,380,380,380,380,380,380,380,380,
            380,380,380,380,380,380,380,380,380,380,
            380,380,380,380,380,380,380,380,380,380,
            380,380,380,380,380,380,380,380,380,380,
            380,380,380,380,462,380,380,380,392,264,
            724,724,724,724,724,724,724,724,724,724,
            724,724,724,724,724,724,724,724,724,724,
            724,724,724,724,724,724,724,724,724,724,
            724,724,724,724,724,724,724,724,724,724,
            724,724,724,724,724,724,724,724,724,724,
            724,724,724,724,724,724,724,724,724,724,
            724,724,724,724,724,724,724,724,724,462,
            724,724,724,724,724,724,724,724,724,724,
            724,724,724,724,724,724,724,724,724,724,
            724,724,724,724,724,392,263,448,448,448,
            448,448,448,448,448,448,448,448,448,448,
            448,448,448,448,448,448,448,448,448,448,
            448,448,448,448,448,448,448,448,448,448,
            448,448,448,448,448,448,448,448,448,448,
            448,448,448,448,448,448,448,448,448,448,
            448,448,448,448,448,448,448,448,448,448,
            448,448,448,448,448,448,462,448,448,448,
            448,448,448,448,448,448,448,448,448,448,
            448,448,448,448,448,448,448,448,448,448,
            448,448,392,1,597,597,597,597,597,597,
            597,597,597,597,596,596,462,462,462,462,
            596,596,596,596,596,596,596,596,596,596,
            596,596,596,596,596,596,596,596,596,596,
            596,596,596,596,596,596,596,596,596,596,
            596,596,596,596,596,596,596,596,596,596,
            596,596,596,596,596,596,596,596,596,596,
            596,596,462,377,377,377,377,377,377,377,
            377,377,377,598,40,515,515,515,515,515,
            515,515,515,515,515,278,278,1910,462,373,
            373,373,373,373,373,373,373,373,373,462,
            462,462,462,442,462,411,411,411,411,411,
            411,411,411,411,411,462,413,413,413,413,
            413,413,413,413,413,413,55,515,515,515,
            515,515,515,515,515,515,515,54,515,515,
            515,515,515,515,515,515,515,515,57,515,
            515,515,515,515,515,515,515,515,515,13,
            261,462,133,440,56,515,515,515,515,515,
            515,515,515,515,515,40,438,438,438,438,
            438,438,438,438,438,438,15,10,22,20,
            266,33,17,31,7,37,462,462,278,278,
            492,512,734,133,52,485,131,350,501,462,
            462,462,462,462,462,462,462,462,462,462,
            462,462,462,462,462,462,462,462,594,462,
            264,462,343,731,462,462,462,462,462,462,
            462,462,462,462,462,462,462,462,462,462,
            462,462,462,462,462,462,594,594,462,594,
            594,1,264,729,732,496,466,465,301,462,
            462,462,462,462,462,462,462,462,462,462,
            462,462,462,462,462,462,462,462,462,462,
            462,462,462,462,462,462,462,462,462,462,
            462,462,1,40,462,13
        };
    };
    public final static char termAction[] = TermAction.termAction;
    public final int termAction(int index) { return termAction[index]; }
    public final int asb(int index) { return 0; }
    public final int asr(int index) { return 0; }
    public final int nasb(int index) { return 0; }
    public final int nasr(int index) { return 0; }
    public final int terminalIndex(int index) { return 0; }
    public final int nonterminalIndex(int index) { return 0; }
    public final int scopePrefix(int index) { return 0;}
    public final int scopeSuffix(int index) { return 0;}
    public final int scopeLhs(int index) { return 0;}
    public final int scopeLa(int index) { return 0;}
    public final int scopeStateSet(int index) { return 0;}
    public final int scopeRhs(int index) { return 0;}
    public final int scopeState(int index) { return 0;}
    public final int inSymb(int index) { return 0;}
    public final String name(int index) { return null; }
    public final int originalState(int state) { return 0; }
    public final int asi(int state) { return 0; }
    public final int nasi(int state) { return 0; }
    public final int inSymbol(int state) { return 0; }

    /**
     * assert(! goto_default);
     */
    public final int ntAction(int state, int sym) {
        return baseAction[state + sym];
    }

    /**
     * assert(! shift_default);
     */
    public final int tAction(int state, int sym) {
        int i = baseAction[state],
            k = i + sym;
        return termAction[termCheck[k] == sym ? k : i];
    }
    public final int lookAhead(int la_state, int sym) {
        int k = la_state + sym;
        return termAction[termCheck[k] == sym ? k : la_state];
    }
}
